package com.juli.school.app.controller.module;

import java.util.List;

import javax.annotation.Resource;

import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;

import com.juli.school.dao.entity.Pub;
import com.juli.school.service.bo.LegBo;
import com.juli.school.service.bo.RecBo;
import com.juli.school.service.enums.EnumModule;
import com.juli.school.service.impl.LegService;
import com.juli.school.service.impl.RecService;
import com.juli.school.utils.core.model.CommonResp;
import com.juli.school.utils.core.model.ListResp;
import com.juli.school.utils.core.model.PageResp;

/**
 * 代跑腿
 * @author wjp
 * @date 2017年10月5日
 */
@RequestMapping("leg")
@Controller
public class LegController {
	
	@Resource
	private LegService legService;
	
	@Resource
	RecService recService;
	
	/**
	 * 添加一条代跑腿
	 * @param love
	 * @return
	 */
	@RequestMapping(value = "add", method = RequestMethod.POST)
	@ResponseBody
	CommonResp<String> add(LegBo legBo) {
		return legService.add(legBo);
	}
	
	/**
	 * 修改一条代跑腿
	 * @param love
	 * @return
	 */
	@RequestMapping("update")
	@ResponseBody
	public CommonResp<String> update(LegBo legBo) {
		return legService.update(legBo);
	}
	
	/**
	 * 删除一条代跑腿记录
	 * 
	 * @param snStamp
	 * @return
	 */
	@RequestMapping("delete")
	@ResponseBody
	public CommonResp<String> delete(String snStamp,String stuId) {
		return legService.delete(snStamp,stuId);
	}
	
	/**  
	 * @Description： 根据编号获取代跑腿详情
	 * @author: hantao
	 * @since: 2017年10月23日 下午11:05:36  
	 */
	@RequestMapping("/detail")
	@ResponseBody
	public CommonResp<LegBo> detail(LegBo legBo) {
		return legService.detail(legBo);
	}
	
	/**
	 * @Description: 增量查询信息列表
	 * @author gaoxiang
	 * @date 2017年9月16日 下午10:27:17
	 */
	@RequestMapping("/list")
	@ResponseBody CommonResp<ListResp<Pub>> list(LegBo req) {
		return legService.list(req);
	}
	
	/**
	 * @Description: 分页查询代跑腿信息
	 * @author gaoxiang
	 * @date 2017年9月16日 下午10:27:17
	 */
	@RequestMapping("/listPage")
	@ResponseBody CommonResp<PageResp<Pub>> listPage(LegBo legBo) {
		return legService.listPage(legBo);
	}
	
	@RequestMapping("detailer")
	public String detailer(LegBo legBo,ModelMap model){
		model.put("type", EnumModule.Leg);
		CommonResp<List<RecBo>> list = recService.list(legBo.getSnStamp());
		model.put("recs", list.getData());
		model.put("obj",  legService.detail(legBo));
		return "/detail/index";
	}
}
